package com.study.map.dto;

import lombok.Data;

import java.util.List;

/**
 * 地理编码响应DTO
 * 地址转换为经纬度坐标的结果
 *
 * @author study
 * @date 2025-08-31
 */
@Data
public class GeoResponse {

    /**
     * 返回状态码
     * 1：成功；0：失败
     */
    private String status;

    /**
     * 返回的状态信息
     */
    private String info;

    /**
     * 状态码
     * 10000：请求正常；其他：请求异常
     */
    private String infocode;

    /**
     * 地理编码信息列表
     */
    private List<Geocode> geocodes;

    /**
     * 地理编码信息
     */
    @Data
    public static class Geocode {
        /**
         * 格式化地址
         */
        private String formatted_address;

        /**
         * 所在国家
         */
        private String country;

        /**
         * 所在省份
         */
        private String province;

        /**
         * 所在城市
         */
        private String city;

        /**
         * 所在区县
         */
        private String district;

        /**
         * 所在乡镇
         */
        private String township;

        /**
         * 所在街道
         */
        private String street;

        /**
         * 门牌号
         */
        private String number;

        /**
         * 区域编码
         */
        private String adcode;

        /**
         * 坐标点
         * 经度在前，纬度在后，经纬度间以","分隔
         */
        private String location;

        /**
         * 匹配级别
         */
        private String level;
    }
}